Summary

Review some possibilities for rating teams based on heuristics like plus/minus differential.


In [2]:
import os
import pandas as pd

In [3]:
base_dir = os.path.join("/Users", "sbussmann", "Development", "buda", "buda-ratings")

In [4]:
interim_dir = os.path.join(base_dir, 'data', 'interim')

In [5]:
league_id = 40264

In [15]:
plusminus = pd.read_csv(os.path.join(interim_dir, 'plusminus_{}.csv'.format(league_id)))

In [16]:
plusminus.head()


Out[16]:
Team Name PlusMinus divname Wins Losses Ties
0 123 Trap! -81 4/3 Div 3 1 9 0
1 215 Needham Street 36 Open Div 1 5 1 1
2 A Lil Bit Sticky -43 4/3 Div 2 5 10 0
3 AHOC 100 4/3 Div 1 14 0 0
4 Alpha No Beta -7 5/2 Div 3 10 9 0

In [17]:
winpct = plusminus['Wins'] / (plusminus['Wins'] + plusminus['Losses'])

In [19]:
plusminus = plusminus.assign(winpercent = winpct)

In [23]:
plusminus.sort_values('PlusMinus', ascending=False)


Out[23]:
Team Name PlusMinus divname Wins Losses Ties winpercent
76 Upstream 119 4/3 Div 2 20 6 0 0.769231
3 AHOC 100 4/3 Div 1 14 0 0 1.000000
31 Injustice League 100 4/3 Div 2 14 1 0 0.933333
47 Puddingstone 98 4/3 Div 2 18 6 0 0.750000
11 Crossroads 73 Open Div 1 17 3 1 0.850000
36 JuJu Hex 72 5/2 Div 2 11 3 1 0.785714
19 Flaming Croissants 66 4/3 Div 2 15 5 0 0.750000
69 Too Drunk to Fail 59 4/3 Div 3 11 2 0 0.846154
46 Pink Flamingos 58 5/2 Div 2 10 1 0 0.909091
6 Baba Yaga 47 5/2 Div 2 9 3 0 0.750000
23 Gothrilla 47 4/3 Div 1 12 4 1 0.750000
34 Jack's Abby HAOS Lager 46 4/3 Div 2 10 2 0 0.833333
39 License to Kilt (fka Scoobers in Scotland) 46 4/3 Div 2 13 6 0 0.684211
42 Maverick 42 5/2 Div 2 9 2 1 0.818182
67 Toads 40 4/3 Div 2 15 8 0 0.652174
48 Rabbit Disc 37 5/2 Div 3 12 8 0 0.600000
1 215 Needham Street 36 Open Div 1 5 1 1 0.833333
56 SnakeCountryBromance 33 5/2 Div 1 5 0 0 1.000000
61 Stall 9 33 Open Div 1 7 5 0 0.583333
33 JHOP 32 4/3 Div 2 12 8 1 0.600000
15 Disc Envy 31 4/3 Div 2 9 8 0 0.529412
50 Rubs The Duckie 30 4/3 Div 2 9 4 0 0.692308
20 FlowChart 29 4/3 Div 1 12 4 0 0.750000
25 GrassBurner 29 4/3 Div 1 11 8 2 0.578947
27 Hippos 26 5/2 Div 2 9 4 0 0.692308
62 Stonecutters 24 5/2 Div 1 8 4 1 0.666667
77 Zerg Rush! 22 4/3 Div 1 10 4 0 0.714286
24 Granite State Grass Stains 22 5/2 Div 3 6 4 0 0.600000
8 Bacon 18 5/2 Div 2 7 4 0 0.636364
21 Flying Salsa 13 5/2 Div 3 12 8 0 0.600000
... ... ... ... ... ... ... ...
74 Turtle Boy -12 4/3 Div 1 5 10 0 0.333333
68 Tofu Wolf -15 5/2 Div 3 11 14 0 0.440000
26 Hammered -18 Open Div 1 5 7 0 0.416667
14 Desert Horizon -18 Open Div 1 0 3 0 0.000000
75 Underwater Monkey Cowboys -24 4/3 Div 3 6 11 1 0.352941
12 DISCtinguished Gentlemen -26 Open Div 1 1 6 0 0.142857
66 The Funky Bunch -29 5/2 Div 2 4 6 0 0.400000
32 Iron Squids -33 5/2 Div 2 1 10 0 0.090909
54 Shake and Bake -34 5/2 Div 1 3 7 3 0.300000
70 Top Shelf -35 4/3 Div 3 2 8 0 0.200000
65 THEM! -35 5/2 Div 3 2 12 0 0.142857
37 Killer Bees -35 5/2 Div 3 3 12 0 0.200000
7 Baboon Heart -35 4/3 Div 3 5 7 0 0.416667
57 Spam -36 5/2 Div 3 9 12 0 0.428571
53 Savage Strike -38 Open Div 1 7 9 0 0.437500
40 Live Poultry, Fresh Killed (LPFK) -39 4/3 Div 1 6 13 0 0.315789
2 A Lil Bit Sticky -43 4/3 Div 2 5 10 0 0.333333
55 Sky Zone -47 Open Div 2 2 9 0 0.181818
5 BBN -47 4/3 Div 1 2 8 1 0.200000
35 Jiggy -48 5/2 Div 3 5 14 1 0.263158
52 SIR! -53 5/2 Div 3 4 12 0 0.250000
44 Nerd Alert -54 4/3 Div 2 7 12 0 0.368421
41 M.O.B. -58 5/2 Div 3 2 10 0 0.166667
43 Moose Lightning -65 4/3 Div 2 4 11 0 0.266667
38 Lady and the BAMF -74 4/3 Div 2 5 15 0 0.250000
0 123 Trap! -81 4/3 Div 3 1 9 0 0.100000
58 Spawning Alewives -84 5/2 Div 3 1 11 0 0.083333
71 Tubbs -89 4/3 Div 2 2 15 0 0.117647
28 Hipster Kitties -98 4/3 Div 2 3 15 0 0.166667
73 TuneSquad Squared -130 4/3 Div 2 0 17 0 0.000000

78 rows × 7 columns


In [26]:
plusminus.sort_values(['divname', 'PlusMinus'], ascending=[True, False])


Out[26]:
Team Name PlusMinus divname Wins Losses Ties winpercent
3 AHOC 100 4/3 Div 1 14 0 0 1.000000
23 Gothrilla 47 4/3 Div 1 12 4 1 0.750000
20 FlowChart 29 4/3 Div 1 12 4 0 0.750000
25 GrassBurner 29 4/3 Div 1 11 8 2 0.578947
77 Zerg Rush! 22 4/3 Div 1 10 4 0 0.714286
64 Swingers -6 4/3 Div 1 5 7 1 0.416667
72 TuneSquad -9 4/3 Div 1 6 7 1 0.461538
74 Turtle Boy -12 4/3 Div 1 5 10 0 0.333333
40 Live Poultry, Fresh Killed (LPFK) -39 4/3 Div 1 6 13 0 0.315789
5 BBN -47 4/3 Div 1 2 8 1 0.200000
76 Upstream 119 4/3 Div 2 20 6 0 0.769231
31 Injustice League 100 4/3 Div 2 14 1 0 0.933333
47 Puddingstone 98 4/3 Div 2 18 6 0 0.750000
19 Flaming Croissants 66 4/3 Div 2 15 5 0 0.750000
34 Jack's Abby HAOS Lager 46 4/3 Div 2 10 2 0 0.833333
39 License to Kilt (fka Scoobers in Scotland) 46 4/3 Div 2 13 6 0 0.684211
67 Toads 40 4/3 Div 2 15 8 0 0.652174
33 JHOP 32 4/3 Div 2 12 8 1 0.600000
15 Disc Envy 31 4/3 Div 2 9 8 0 0.529412
50 Rubs The Duckie 30 4/3 Div 2 9 4 0 0.692308
18 Fetch 9 4/3 Div 2 8 11 0 0.421053
63 Store Bought Dirt 8 4/3 Div 2 13 11 0 0.541667
10 Booooooosh! 0 4/3 Div 2 4 5 0 0.444444
16 Dominion -6 4/3 Div 2 6 7 0 0.461538
49 Rogues' Gallery -6 4/3 Div 2 9 11 1 0.450000
2 A Lil Bit Sticky -43 4/3 Div 2 5 10 0 0.333333
44 Nerd Alert -54 4/3 Div 2 7 12 0 0.368421
43 Moose Lightning -65 4/3 Div 2 4 11 0 0.266667
38 Lady and the BAMF -74 4/3 Div 2 5 15 0 0.250000
71 Tubbs -89 4/3 Div 2 2 15 0 0.117647
... ... ... ... ... ... ... ...
8 Bacon 18 5/2 Div 2 7 4 0 0.636364
22 Get Flat Ultimate 2 5/2 Div 2 10 8 0 0.555556
29 Hucky McThrowandcatch -1 5/2 Div 2 5 5 0 0.500000
51 SHRedline -6 5/2 Div 2 6 8 0 0.428571
66 The Funky Bunch -29 5/2 Div 2 4 6 0 0.400000
32 Iron Squids -33 5/2 Div 2 1 10 0 0.090909
48 Rabbit Disc 37 5/2 Div 3 12 8 0 0.600000
24 Granite State Grass Stains 22 5/2 Div 3 6 4 0 0.600000
21 Flying Salsa 13 5/2 Div 3 12 8 0 0.600000
13 Demons 12 5/2 Div 3 5 6 0 0.454545
4 Alpha No Beta -7 5/2 Div 3 10 9 0 0.526316
68 Tofu Wolf -15 5/2 Div 3 11 14 0 0.440000
37 Killer Bees -35 5/2 Div 3 3 12 0 0.200000
65 THEM! -35 5/2 Div 3 2 12 0 0.142857
57 Spam -36 5/2 Div 3 9 12 0 0.428571
35 Jiggy -48 5/2 Div 3 5 14 1 0.263158
52 SIR! -53 5/2 Div 3 4 12 0 0.250000
41 M.O.B. -58 5/2 Div 3 2 10 0 0.166667
58 Spawning Alewives -84 5/2 Div 3 1 11 0 0.083333
11 Crossroads 73 Open Div 1 17 3 1 0.850000
1 215 Needham Street 36 Open Div 1 5 1 1 0.833333
61 Stall 9 33 Open Div 1 7 5 0 0.583333
17 Fat Bass Ultimate 11 Open Div 1 6 4 0 0.600000
59 Squid Squad 2 Open Div 1 6 7 0 0.461538
14 Desert Horizon -18 Open Div 1 0 3 0 0.000000
26 Hammered -18 Open Div 1 5 7 0 0.416667
12 DISCtinguished Gentlemen -26 Open Div 1 1 6 0 0.142857
53 Savage Strike -38 Open Div 1 7 9 0 0.437500
30 I'm not gonna not play Flong 1 Open Div 2 2 3 0 0.400000
55 Sky Zone -47 Open Div 2 2 9 0 0.181818

78 rows × 7 columns


In [ ]: